More and more people are increasingly using virtual products and services on their personal computing devices, such as using electronic mail (i.e. e-mail) and instant messaging, to communicate with one another. Many people are also using Internet based social networking, content sharing and dating tools to network and interact with others. People are also increasingly using online banking tools to manage their personal finances without having to visit a physical bank branch. More and more people are also using virtual tools for entertainment and leisure activities, such as Internet based games, online movies, Internet music, virtual books and magazines, and news and sports score feeds. Moreover, people are increasingly using mobile computing devices, such as mobile phones, laptop computers, and tablets, to access and for use with these virtual products and services.
With the increasing popularity of using virtual products and services available on personal computing devices and desire to maintain one's privacy, anonymity, or to separate interaction with multiple different groups of people or spheres of interest, many people have developed multiple virtual personas for themselves, such as professional and personal personas. For example, many people use different email addresses to separate their professional and personal communication. Many people also create separate professional and personal profiles on social networks to maintain privacy between their professional and personal lives. Some people even maintain multiple professional or multiple personal personas. Managing these multiple personas in order to preserve personal privacy can be time consuming, inefficient, and frustrating. The present invention facilitates the ability to do these things quickly, efficiently, and simultaneously by eliminating the need to interact with multiple accounts, profiles or data sources and destinations separately.
For the purposes of the present application, a graphical user interface (GUI) refers to one or more of the interface components typically displayed on a display of a computing device that allow for interaction and manipulation by the a user and the data with which the user interacts. GUI interfaces may emulate a virtual desktop environment, display graphics, and allow interaction between a user and virtual profiles or accounts through, for example, a screen, a touchscreen, or an input device on a personal computing device.
For the purposes of the present application, an “icon” is a graphic image which may be displayed on a computer screen or other computing display device and usually corresponds in appearance to the type of information, system resource, or application which it provides access to when it is visible. It is a graphical object which represents and serves to identify information, system resources, applications, and the like, and may exist inside any particular window, including the virtual desktop itself. An icon may be associated with a particular collection of computer information, typically representing a “file” which may be a collection of data, a particular device or device handle, an application, program, and the like. An icon also may represent a window corresponding to, for example, an application in an active but “minimized” state.
A “file” generally refers to a collection of information or data which the user wishes to use, create or modify; each particular file has an associated unique name for identification by both the system and the user. Any given file may typically be located within the information management system by knowing a file name, an iconographic representation associated with the name, or a window name associated, for example, with a group of files which are stored together. All information (files) grouped within a particular window may be identified with that particular window's own identification location within the computer information management system. Accordingly, a user interface screen display, for example, may be broken down into multiple windows and graphic icons.
Another important element of some conventional user interfaces is a screen cursor. The cursor allows direct user control over the user interface and generally represents the point on the desktop which is presently “active”, e.g. where input may be received, or output may be seen or taken. A user interface may be complemented with a “mouse” or other suitable pointing device and a corresponding “pointer” which makes up the cursor control device and provides the “point-and-click” user interface. The pointer may be used to change where on the desktop the active cursor is at a given time. A mouse may typically be an electromechanical device that translates two-dimensional mouse movement controlled by a user into a two-dimensional screen position movement represented by, for example, a pointer or arrowhead. The user may contact and direct the mouse while observing the position of the pointer on the screen thus bringing the user and the computer closer together via the interaction between the user, the mouse, the pointer and the display. When the mouse is moved signals are generated and input to the computer on an input port and the pointer moves correspondingly to a point on the display. Visual feedback may be used to control the exact location of the pointer by movement of the mouse. In addition, the computer may store the location of the pointer which corresponds to an exact location on the display. It should be noted that the computer may also store the location of each icon or other interactive object such that when the pointer and an icon location coincide, specific actions may be taken by the user to “activate” the icon as described in greater detail herein below. In other systems, such as those utilizing a touchscreen display device, pointing functionality may be substituted by the user touching the screen in a desired location with their finger, or other suitable stylus or pointing device, for example.
In systems using a mouse, the mouse may also be provided with one or more push buttons which may be used to effectuate control over the pointer by selecting or deselecting specific icons or other interactive tools. The mouse may be considered to be “activated” when the mouse button is depressed and the pointer remains active until the button is released. Pointer activation may also be initiated by sequences of mouse button presses, such as a “double click” interaction which involves rapidly pressing the mouse button press twice in sequence. By placing the pointer in a new location on the desktop and “clicking” or “double clicking”, the location of the active cursor, for example, may be changed to a new window, or, for example, an application may be launched by “double clicking” on the application's icon. However, as the desktop-becomes increasingly crowded with icons, open windows and other selection options problems may arise. Analogously, in touchscreen systems, single or double touches of the screen may be used to activate user interface features, for example.
Toolbars offer easier and more direct access to key commands of an application by presenting these commands as buttons either as part of the application's primary task window or in a floating window. Toolbars are typically programmed by an application developer as part of an application program since the function associated with the toolbar selection is often closely tied to one or more functions performed by the application. Problems arise, however, in that if a configuration change is needed in the application requiring, for example, that new functions must be added to the application toolbar, a separate and complex human interface dedicated to the task of adding the new function is required. Often times, rebuilding of the application (e.g. compiling, linking, and the like) is needed to change the configuration of the toolbar. Moreover, as other, similar applications are used, a separate toolbar must be configured for each application and deliberately saved to preserve the new toolbar settings for the particular application.